[DllImport("shlwapi.dll", CharSet=CharSet.Auto)]
static extern bool PathRelativePathTo(
[Out] StringBuilder pszPath,
[In] string pszFrom,
[In] uint dwAttrFrom,
[In] string pszTo,
[In] uint dwAttrTo
);
<DllImport("shlwapi.dll", CharSet:=CharSet.Auto)> _
Public Shared Function PathRelativePathTo( _
ByVal pszPath As StringBuilder, _
ByVal pszFrom As String, _
ByVal dwAttrFrom As Integer, _
ByVal pszTo As String, _
ByVal dwAttrTo As Integer) As Boolean
End Function
None.
None.
The Microsoft.VisualBasic.FileAttribute enumeration can be used to specify the file attribute
const UInt32 FILE_ATTRIBUTE_DIRECTORY = 0x10;
const Int32 MAX_PATH = 260;
StringBuilder str = new StringBuilder(MAX_PATH);
UInt32 dwAttr1 = FILE_ATTRIBUTE_DIRECTORY;
UInt32 dwAttr2 = 0;
Boolean bRet = PathRelativePathTo(
str,
@"c:\a\b\path", dwAttr1,
@"c:\a\x\y\file", dwAttr2
);
// Result: str.ToString() == @"..\..\x\y\file"
Do you know one? Please contribute it!